package cn.buk.tms.entity.config;

import jakarta.persistence.*;
import java.util.Date;

/**
 * User: william
 * Date: 14-5-28
 * Time: 下午3:53
 * @author yfdai
 */
@Entity
@Table(name="t107", uniqueConstraints = @UniqueConstraint(name = "uk_ent_cfg", columnNames = {"enterprise_id", "itemCode"}))
public class EnterpriseConfig {

    /**
     * 订单数据的最大可查找年数
     */
    public static final int MAX_SEARCHABLE_YEARS = 2;

    public static final String ENTERPRISE_CONFIG_ETERM_NOTICE = "I081";
    public static final String ENTERPRISE_TBOOKING_USERNAME = "I101";
    public static final String ENTERPRISE_TBOOKING_PASSWORD = "I102";
    /**
     * 每天的工作开始时间
     */
    public static final String ENTERPRISE_WORK_BEGIN_TIME = "I103";
    /**
     * 每天的工作结束时间
     */
    public static final String ENTERPRISE_WORK_END_TIME = "I104";
    /**
     * //工作日，周一到周日那几天工作，用逗号隔开 周一是1，周日是7
     */
    public static final String ENTERPRISE_WORK_DAYS = "I105";
    /**
     * //是否启用携程政策监控,0-不启用,1-启用(默认)
     */
    public static final String ENTERPRISE_TBOOKING_STATUS = "I106";
    public static final String ENTERPRISE_TBOOKING_MD5_PASSWORD = "I107";
    /**
     * //是否自动调整政策,目前主要指"删除编码时,是否调整政策为无效
     */
    public static final String ENTERPRISE_TBOOKING_AUTO_ADJUST_POLICY = "I108";
    /**
     * //政策中的office(上传到携程政策中所使用的office)
     */
    public static final String ENTERPRISE_TBOOKING_OFFICE = "I109";
    /**
     * //是否启用自动上传政策: TRUE,1表示自动上传,其它表示不自动
     */
    public static final String ENTERPRISE_TBOOKING_AUTO_UPLOAD_POLICY = "I110";
    /**
     * //自动上传政策: 底价加价
     */
    public static final String ENTERPRISE_TBOOKING_AUTO_POLICY_COST_PLUS = "I111";
    /**
     * //携程订单的最大亏损
     */
    public static final String ENTERPRISE_TBOOKING_MAX_LOSS = "I112";
    /**
     * // 卖家的收款账号
     */
    public static final String ENTERPRISE_RECEIVING_ACCOUNT = "I115";
    /**
     * // 自动开票用到的BSP打票机序号，默认为1
     */
    public static final String ENTERPRISE_BSP_PRINTER = "I116";
    /**
     * //需要自动调整价格的航空公司舱位
     */
    public static final String ENTERPRISE_NEED_AUTO_SET_PRICE = "I130";
    /**
     * 价格调整幅度
     */
    public static final String ENTERPRISE_PRICE_ADJUSTMENT = "I131";
    /**
     * 每夜自动加价的幅度
     */
    public static final String ENTERPRISE_INCREASE_PRICE_IN_NIGHT = "I132";
    /**
     * //特殊政策的默认底价
     */
    public static final String ENTERPRISE_DEFAULT_BOTTOM_PRICE = "I133";
    /**
     * //特殊政策,处于疯狂比价模式的航空公司
     */
    public static final String ENTERPRISE_AIRLINE_IN_CRAZY_MODE = "I134";
    /**
     * //开通的携程国内比价数量
     */
    public static final String ENTERPRISE_DOM_POLICY_MONITOR_COUNT = "I156";
    /**
     * //开通的携程国际比价数量
     */
    public static final String ENTERPRISE_INTL_POLICY_MONITOR_COUNT = "I157";

    /**
     * //携程国际平台接口的用户名
     */
    public static final String ENTERPRISE_TBOOKING_INTL_USERNAME = "I301";
    /**
     * //携程国际平台接口的密码
     */
    public static final String ENTERPRISE_TBOOKING_INTL_PASSWORD = "I302";

    /**
     * 苏州快捷用户名（他们默认用OfficeNo，比如SHA274）
     */
    public static final String ENTERPRISE_SZKJ_USERNAME = "I305";
    /**
     * 苏州快捷ETERM接口用户名
     */
    public static final String ENTERPRISE_SZKJ_ETERM_USERNAME = "I306";
    /**
     * 苏州快捷ETERM接口密码
     */
    public static final String ENTERPRISE_SZKJ_ETERM_PASSWORD = "I307";

    /**
     * cz ndc 接口（airskyhk.com提供）uid
     */
    public static final String ENTERPRISE_AIRSKYHK_UID = "I310";
    /**
     * cz ndc 接口（airskyhk.com提供） sid
     */
    public static final String ENTERPRISE_AIRSKYHK_SID = "I311";
    /**
     * cz ndc 接口（airskyhk.com提供） key
     */
    public static final String ENTERPRISE_AIRSKYHK_KEY = "I312";
    /**
     * cz ndc 接口（airskyhk.com提供） api url
     */
    public static final String ENTERPRISE_AIRSKYHK_URL = "I313";
    /**
     * cz ndc 接口（airskyhk.com提供） 是否为生产环境
     */
    public static final String ENTERPRISE_AIRSKYHK_IS_PRODUCT = "I314";



    /**
     * //是否需要开TMC的白名单政策，默认为0，不允许；1-允许。
     */
    public static final String ENTERPRISE_WHITE_LIST = "I401";
//    public static final String ENTERPRISE_TMC_ALLOWED = "I501"; //是否允许新建tmc账号
//    public static final String ENTERPRISE_TMC_COUNT = "I502"; //是否允许新建tmc账号的数量
    /**
     * // 付费会员的有效期，有效期过后只能使用免费功能
     */
    public static final String ENTERPRISE_EXPIRE_DATE = "I801";
    /**
     * // 允许的数据模板的数量
     */
    public static final String DATA_TEMPLATE_COUNT = "I802";
    /**
     * //短信，公司签名
     */
    public static final String API_SMS_COMPANY_SIGN = "I901";
    /**
     *   //短信，接口url
     */
    public static final String API_SMS_URL = "I902";
    /**
     * //短信，secretKey
     */
    public static final String API_SMS_SECRET_KEY = "I903";
    /**
     * //短信，accessKey
     */
    public static final String API_SMS_ACCESS_KEY = "I904";
    /**
     * vaas api URL
     */
    public static final String API_VAAS_URL = "I911";
    /**
     * vaas api 用户名
     */
    public static final String API_VAAS_USERNAME= "I912";
    /**
     * vaas api secretKey
     */
    public static final String API_VAAS_SECRET_KEY= "I913";

    /**
     * azure存储账户名
     */
    public static final String API_AZURE_STORAGE_ACCOUNT_NAME = "I920";
    /**
     * azure存储账户访问密钥
     */
    public static final String API_AZURE_STORAGE_ACCOUNT_KEY = "I921";
    /**
     * azure存储账户下容器名称
     */
    public static final String API_AZURE_STORAGE_CONTAINER_NAME = "I922";


    /**
     * tms 创建机票订单时，是否一步完成订单
     * 0 - 否
     * 1 - 是
     */
    public static final String TMS_ONE_STEP_CREATE_ORDER = "I1001";
    /**
     * 是否启用企业客户信息隐藏
     */
    public static final String TMS_HIDE_CUSTOMER_NAME = "I1002";
    /**
     * 客服角色仅能看到自己创建的订单
     */
    public static final String TMS_OP1_SEE_OWN_ORDER = "I1003";

    /**
     * 自动出票使用的接口式
     * 0/NULL: BSP自动出票（BukPM)
     * 1：苏州快捷的BSP开票接口
     * 4: 停用
     */
    public static final String TMS_AUTO_TICKET_MODE = "I1004";


    /**
     * 订单校验模式：
     * 0 - 宽松
     * 1 - 严格
     */
    public static final String TMS_ORDER_VALIDATE_MODE = "I1005";

    /**
     * 自动出票开关
     * 0 - 不自动出票
     * 1 - 非工作时间自动出票
     * 2 - 全天候自动出票
     */
    public static final String TMS_AUTO_TICKETING_SWITCH = "I1006";

    //默认联系人
    public static final String TMS_DEFAULT_LINKMAN = "I1007";
    //默认联系电话
    public static final String TMS_DEFAULT_LINK_PHONE = "I1008";
    //默认联系手机
    public static final String TMS_DEFAULT_LINK_MOBILE = "I1009";
    //默认联系邮件
    public static final String TMS_DEFAULT_LINK_EMAIL = "I1010";
    //企业微信公众号名称
    public static final String ENT_WEIXIN_SERVER_NO_NAME = "I1011";

    /**
     * 全局酒店加价
     */
    public static final String GLOBAL_HOTEL_MARKUP = "I1101";
    /**
     * 全局用车加价
     */
    public static final String GLOBAL_CAR_MARKUP = "I1102";
    /**
     * 全局登机牌加价
     */
    public static final String GLOBAL_BOARDING_CARD_MARKUP = "I1103";
    /**
     * 全局国内机票加价（公布运价）
     */
    public static final String GLOBAL_DOM_FLIGHT_MARKUP = "I1104";
    /**
     * 全局国际机票加价（接口过来的）
     */
    public static final String GLOBAL_INTL_FLIGHT_MARKUP = "I1105";

    /**
     * 企业客户酒店优惠
     */
    public static final String CUSTOMER_HOTEL_DISCOUNT = "I1201";
    /**
     * 企业客户用车优惠
     */
    public static final String CUSTOMER_CAR_DISCOUNT = "I1202";
    /**
     * 企业客户登机牌办理优惠
     */
    public static final String CUSTOMER_BOARDING_CARD_DISCOUNT = "I1203";
    public static final String CUSTOMER_DOM_FLIGHT_DISCOUNT = "I1204";
    public static final String CUSTOMER_INTL_FLIGHT_DISCOUNT = "I1205";

    /**
     * 企业客户可用航班查询的最大次数
     */
    public static final String CUSTOMER_AV_MAX_TOTAL = "I1301";
    /**
     * 企业客户每月最大航班查询的次数
     */
    public static final String CUSTOMER_AV_MAX_MONTHLY = "I1302";
    /**
     * 企业客户已使用的航班查询总次数
     */
    public static final String CUSTOMER_AV_USED_TOTAL = "I1303";
    /**
     * 企业客户已使用的本月航班查询次数
     */
    public static final String CUSTOMER_AV_USED_MONTHLY = "I1304";



    /**
     * // 携程联盟的站点ID
     */
    public static final String CTRIP_ALLIANCE_SITE_ID = "I2001";
    /**
     * // REDMINE URL
     */
    public static final String REDMINE_URL = "I2002";
    /**
     * 供企业客户使用的在线差旅管理系统
     * // EOTMS(Enterprise Online Travel Management System) URL
     */
    public static final String EOTMS_URL = "I2003";


    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private int id;

    @Column(length=4)
    private String itemCode;

    @Column(length=200)
    private String itemValue;

    @Column(name="enterprise_id")
    private int enterpriseId;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "create_time", insertable = false, updatable = false)
    private Date createTime;

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "last_update", insertable = false)
    private Date lastUpdate;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getItemCode() {
        return itemCode;
    }

    public void setItemCode(String itemCode) {
        this.itemCode = itemCode;
    }

    public String getItemValue() {
        return itemValue;
    }

    public void setItemValue(String itemValue) {
        this.itemValue = itemValue;
    }

    public int getEnterpriseId() {
        return enterpriseId;
    }

    public void setEnterpriseId(int enterpriseId) {
        this.enterpriseId = enterpriseId;
    }
}
